package com.puti.doctor.domian;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.puti.common.core.annotation.Excel;
import com.puti.common.core.web.domain.BaseEntity;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

import java.math.BigDecimal;
import java.util.Date;

@JsonInclude(value = JsonInclude.Include.NON_NULL)
public class PatientHealth extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /** 信息ID */
    private Long healthId;

    /** 患者ID */
    @Excel(name = "患者ID")
    private Long healthPatientId;

    /** 患者名称 */
    @Excel(name = "患者名称")
    private String healthPatientName;

    /** 性别 */
    @Excel(name = "性别")
    private Long healthGender;

    /** 出生日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date healthBirth;

    /** 手机号 */
    @Excel(name = "手机号")
    private Long healthPhone;

    /** 身份证 */
    @Excel(name = "身份证")
    private String healthCard;

    /** 身高 */
    @Excel(name = "身高")
    private BigDecimal healthHeight;

    /** 体重 */
    @Excel(name = "体重")
    private BigDecimal healthWeight;

    /** 肾功能 0：正常
     1：非正常 */
    @Excel(name = "肾功能 0：正常 1：非正常")
            private Long healthKidney;

            /** 婚姻状况 0：未婚
            1：已婚 */
            @Excel(name = "婚姻状况 0：未婚 1：已婚")
                    private Long healthMarriage;

            /** 生育状态 0：未生育
            1：已生育 */
            @Excel(name = "生育状态 0：未生育 1：已生育")
            private Long healthFertility;

            /** 疾病史 */
            @Excel(name = "疾病史")
            private String healthMedicalhistory;

            /** 饮酒习惯 */
            @Excel(name = "饮酒习惯")
            private String healthDrinkinghabit;

            /** 肝功能 */
            @Excel(name = "肝功能")
            private String healthLiver;

            /** 病情详情 */
            @Excel(name = "病情详情")
            private String healthDetail;

            /** 诊断 */
            @Excel(name = "诊断")
            private String healthDiagnosis;

            /** 乐观锁 */
            @Excel(name = "乐观锁")
            private Long revision;

            /** 创建人 */
            @Excel(name = "创建人")
            private String createdBy;

            /** 创建时间 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
            private Date createdTime;

            /** 更新人 */
            @Excel(name = "更新人")
            private String updatedBy;

            /** 更新时间 */
            @JsonFormat(pattern = "yyyy-MM-dd")
            @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
            private Date updatedTime;

            public void setHealthId(Long healthId)
    {
        this.healthId = healthId;
    }

    public Long getHealthId()
    {
        return healthId;
    }
    public void setHealthPatientId(Long healthPatientId)
    {
        this.healthPatientId = healthPatientId;
    }

    public Long getHealthPatientId()
    {
        return healthPatientId;
    }
    public void setHealthPatientName(String healthPatientName)
    {
        this.healthPatientName = healthPatientName;
    }

    public String getHealthPatientName()
    {
        return healthPatientName;
    }
    public void setHealthGender(Long healthGender)
    {
        this.healthGender = healthGender;
    }

    public Long getHealthGender()
    {
        return healthGender;
    }
    public void setHealthBirth(Date healthBirth)
    {
        this.healthBirth = healthBirth;
    }

    public Date getHealthBirth()
    {
        return healthBirth;
    }
    public void setHealthPhone(Long healthPhone)
    {
        this.healthPhone = healthPhone;
    }

    public Long getHealthPhone()
    {
        return healthPhone;
    }
    public void setHealthCard(String healthCard)
    {
        this.healthCard = healthCard;
    }

    public String getHealthCard()
    {
        return healthCard;
    }
    public void setHealthHeight(BigDecimal healthHeight)
    {
        this.healthHeight = healthHeight;
    }

    public BigDecimal getHealthHeight()
    {
        return healthHeight;
    }
    public void setHealthWeight(BigDecimal healthWeight)
    {
        this.healthWeight = healthWeight;
    }

    public BigDecimal getHealthWeight()
    {
        return healthWeight;
    }
    public void setHealthKidney(Long healthKidney)
    {
        this.healthKidney = healthKidney;
    }

    public Long getHealthKidney()
    {
        return healthKidney;
    }
    public void setHealthMarriage(Long healthMarriage)
    {
        this.healthMarriage = healthMarriage;
    }

    public Long getHealthMarriage()
    {
        return healthMarriage;
    }
    public void setHealthFertility(Long healthFertility)
    {
        this.healthFertility = healthFertility;
    }

    public Long getHealthFertility()
    {
        return healthFertility;
    }
    public void setHealthMedicalhistory(String healthMedicalhistory)
    {
        this.healthMedicalhistory = healthMedicalhistory;
    }

    public String getHealthMedicalhistory()
    {
        return healthMedicalhistory;
    }
    public void setHealthDrinkinghabit(String healthDrinkinghabit)
    {
        this.healthDrinkinghabit = healthDrinkinghabit;
    }

    public String getHealthDrinkinghabit()
    {
        return healthDrinkinghabit;
    }
    public void setHealthLiver(String healthLiver)
    {
        this.healthLiver = healthLiver;
    }

    public String getHealthLiver()
    {
        return healthLiver;
    }
    public void setHealthDetail(String healthDetail)
    {
        this.healthDetail = healthDetail;
    }

    public String getHealthDetail()
    {
        return healthDetail;
    }
    public void setHealthDiagnosis(String healthDiagnosis)
    {
        this.healthDiagnosis = healthDiagnosis;
    }

    public String getHealthDiagnosis()
    {
        return healthDiagnosis;
    }
    public void setRevision(Long revision)
    {
        this.revision = revision;
    }

    public Long getRevision()
    {
        return revision;
    }
    public void setCreatedBy(String createdBy)
    {
        this.createdBy = createdBy;
    }

    public String getCreatedBy()
    {
        return createdBy;
    }
    public void setCreatedTime(Date createdTime)
    {
        this.createdTime = createdTime;
    }

    public Date getCreatedTime()
    {
        return createdTime;
    }
    public void setUpdatedBy(String updatedBy)
    {
        this.updatedBy = updatedBy;
    }

    public String getUpdatedBy()
    {
        return updatedBy;
    }
    public void setUpdatedTime(Date updatedTime)
    {
        this.updatedTime = updatedTime;
    }

    public Date getUpdatedTime()
    {
        return updatedTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("healthId", getHealthId())
                .append("healthPatientId", getHealthPatientId())
                .append("healthPatientName", getHealthPatientName())
                .append("healthGender", getHealthGender())
                .append("healthBirth", getHealthBirth())
                .append("healthPhone", getHealthPhone())
                .append("healthCard", getHealthCard())
                .append("healthHeight", getHealthHeight())
                .append("healthWeight", getHealthWeight())
                .append("healthKidney", getHealthKidney())
                .append("healthMarriage", getHealthMarriage())
                .append("healthFertility", getHealthFertility())
                .append("healthMedicalhistory", getHealthMedicalhistory())
                .append("healthDrinkinghabit", getHealthDrinkinghabit())
                .append("healthLiver", getHealthLiver())
                .append("healthDetail", getHealthDetail())
                .append("healthDiagnosis", getHealthDiagnosis())
                .append("revision", getRevision())
                .append("createdBy", getCreatedBy())
                .append("createdTime", getCreatedTime())
                .append("updatedBy", getUpdatedBy())
                .append("updatedTime", getUpdatedTime())
                .toString();
    }
}
